package edu.umb.cs.antmanager.common;

import java.rmi.Remote;
import java.rmi.RemoteException;
import java.util.HashMap;

import edu.umb.cs.antmanager.domain.MachineType;
import edu.umb.cs.antmanager.domain.TestType;

public interface ManagerInterface extends Remote {

	// for agent call back
	public void addTestLog(byte[] log, MachineStatus agentStatus)
			throws RemoteException;

	// for GUI to control and get system status
	public HashMap<MachineType, String> getMachinesStatus()
			throws RemoteException;

	public HashMap<TestType, String> getTestsStatus() throws RemoteException;

	public void shutDownAgent(String agentName) throws RemoteException;

	public void restartAgent(String agentName) throws RemoteException;

	public void shutDownManager() throws RemoteException;

	public void restartManager() throws RemoteException;
}
